//是否切换上传状态下拉框
var isChange = true;

//医疗机构信息表格绑定列
var ksxxColumns = null;


//未上传机构信息表格绑定列
var wscKsxxColumns = [
    {
        field: 'KSDM',
        title: '科室代码',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'JGMC',
        title: '医疗机构名称',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },

    {
        field: 'KSMC',
        title: '科室名称',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'operate',
        title: '操作',
        align: 'center',
        halign: 'center',
        events: 'operateEvents',
        formatter: operateKsxxWscFormatter
    }
];


//已上传医疗机构表格绑定列
var yscKsxxColums = [
    {
        field: 'KSDM',
        title: '科室代码',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'KSMC',
        title: '科室名称',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'JGMC',
        title: '医疗机构名称',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'ZCRQ',
        title: '注册日期',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },

    {
        field: 'ZCJG',
        title: '注册结果',
        align: 'center',
        halign: 'center',
        valign: 'middle',
    },
    {
        field: 'operate',
        title: '操作',
        align: 'center',
        halign: 'center',
        events: 'operateEvents',
        formatter: operateKsxxYscFormatter
    }
];

$(document).ready(function () {

    //初始化科室上传统计信息
    iniKsxxCountInfo();

    //初始化医疗机构信息表格
    iniKSXXTable(true);

    $('#searchSCZT').change(scztSelectChangeHandler);

    //查询按钮点击事件
    $('#searchBtn').click(searchBtnClickHandler);
});

/**
 * 上传状态下拉框切换事件
 */
function scztSelectChangeHandler() {
    isChange = true;
}

/**
 * 查询按钮点击事件
 */
function searchBtnClickHandler() {
    iniKSXXTable(true);
}

/**
 * 初始化医疗机构信息表格
 */
function iniKSXXTable(isInt) {

    var index = parent.layer.load();

    var sczt = $('#searchSCZT option:selected').val();

    //机构编码
    var JGBM = $('#searchJGBM').val();

    //科室代码
    var KSDM = $('#searchKSDM').val();

    //科室名称
    var KSMC = $('#searchKSMC').val();


    var urlParam = "../../IHEController/getJcxxYlKsInfo?sczt=" + sczt + "&yljgdm=" + JGBM + "&ksmc=" + KSMC + "&ksdm=" + KSDM;

    //是否初始化和是否切换上传状态
    if (isInt || isChange) {
        //初始化Table列
        if (sczt == "3") {
            ksxxColumns = wscKsxxColumns;
        } else {
            ksxxColumns = yscKsxxColums;
        }


        var sk = $("#jcxx_depart_table").bootstrapTable('destroy').bootstrapTable({
            url: urlParam,
            striped: true, // 是否显示行间隔色
            cache: false, // 是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            pagination: true, // 是否显示分页（*）
            sidePagination: "server", // 分页方式：client客户端分页，server服务端分页（*）
            pageSize: 25,
            pageList: [25],
            sortable: false, // 是否启用排序
            sortOrder: "asc", // 排序方式
            // rowStyle:rowStyle,
            height: 'auto',
            queryParams: function (params) {
                // 可自定义增加参数
                return {
                    pageNumber: params.offset / params.limit + 1,
                    pageSize: params.limit
                };
                // //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
                // limit:params.limit, //页面大小
                // offset:params.offset //页码

            },

            // 传递参数（*）
            search: false, // 是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
            showFooter: false,
            strictSearch: true,
            showColumns: false, // 是否显示所有的列
            showRefresh: false, // 是否显示刷新按钮
            minimumCountColumns: 2, // 最少允许的列数
            clickToSelect: true, // 是否启用点击选中行
            showToggle: false, // 是否显示详细视图和列表视图的切换按钮
            cardView: false, // 是否显示详细视图
            detailView: false, // 是否显示父子表
            columns: ksxxColumns,
            onLoadSuccess: function () { //加载成功时执行 

                parent.layer.close(index);

                $('#rowTable').height($("#jcxx_depart_table").height() + 250);

                parent.setIframeHeight('frameContext');
            },
            onClickRow: function (row, element, field) {
                $('.info').removeClass('info'); // 去除之前选中的行的，选中样式
                $(element).addClass('info'); // 添加当前选中的 success样式用于区别
            }
        });

        isChange = false;
    } else {
        $('#jcxx_depart_table').bootstrapTable('refresh', {url: urlParam});

    }

}


/**
 *医疗机构信息未上传操作按钮初始化
 */
function operateKsxxWscFormatter(value, row, index) {
    return [
        '<button type="button" class="KsxxSC btn btn-default  btn-sm" style="border:0px;background-color:transparent;"><i class="glyphicon glyphicon-arrow-up table-update-icon" style="">上传</i></button>'
    ].join('');

}

/**
 * 医疗机构信息已上传操作按钮初始化
 */
function operateKsxxYscFormatter(value, row, index) {
    return [
        '<button type="button" class="KsxxCK btn btn-default  btn-sm" style="border:0px;background-color:transparent;"><i class="glyphicon glyphicon-search table-update-icon" style="">查看</i></button>'
    ].join('');
}


/**
 * 操作按钮点击事件
 */
window.operateEvents = {
    'click .KsxxSC': function (e, value, row, index) {

        uploadKSXX(row);
    },
    'click .KsxxCK': function (e, value, row, index) {

        showKSXX(row);
    }

};


/**
 * 初始化医疗科室上传统计信息
 */
function iniKsxxCountInfo() {
    var urlParam = '../../IHEController/getJcxxKsxxSctj';
    $.ajax({
        type: "GET",
        dataType: "json",
        url: urlParam,
        success: function (jsonData) {
            if (jsonData != null) {
                $("#ksxx_zs").html(jsonData.ZSL);
                $("#ksxx_sczs").html(jsonData.YSC);
                $("#ksxx_wscs").html(jsonData.WSC);
                $("#ksxx_sccg").html(jsonData.ZCCG);
                $("#ksxx_scsb").html(jsonData.ZCSB);
                $("#ksxx_xcscsj").html(jsonData.XCZXSJ);
            }
        }
    });
}


/**
 * 上传一份科室信息构信息
 */
function uploadKSXX(row) {
    var index = parent.layer.load();
    var urlParam = '../../IHEController/uploadKsxx?ksdm=' + row.KSDM;
    $.ajax({
        type: "GET",
        dataType: "json",
        url: urlParam,
        success: function (jsonData) {
            parent.layer.close(index);

            if (jsonData != null) {
                if (jsonData.RS == "TRUE") {
                    alertWin("执行上传成功!", 1);

                } else {
                    alertWin("失败!" + jsonData.INFO, 2);
                }

                //刷新表格
                iniKSXXTable(true);

                //刷新统计信息
                iniKsxxCountInfo();
            }
        }
    });
}


/**
 * 查看个人信息及上传结果
 */
function showKSXX(row) {

    var contentStr = "<div class='icon_lists clear' style='height:100%; padding-left: 15px; padding-right: 15px; padding-top:10px; padding-bottom: 15px;'>" +
        "<div class='row'>" +

        "<div class='col-sm-6' style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>医疗机构代码：</label>" +
        "<label class=' control-label col-sm-7' style='text-align:left;'>" + row.YLJGDM + "</label>" +
        "</div>" +
        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>医疗机构名称：</label>" +
        "<label class='control-label col-sm-7' style='text-align:left;'>" + row.JGMC + "</label>" +
        "</div>" +


        "<div class='col-sm-6' style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>科室代码：</label>" +
        "<label class=' control-label col-sm-7' style='text-align:left;'>" + row.KSDM + "</label>" +
        "</div>" +
        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>科室名称：</label>" +
        "<label class='control-label col-sm-7' style='text-align:left;'>" + row.KSMC + "</label>" +
        "</div>" +


        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>国家平台标识号：</label>" +
        "<label class='control-label col-sm-7' style='text-align:left;'>" + row.GJPTBSH + "</label>" +
        "</div>" +

        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>注册日期：</label>" +
        "<label class=' control-label col-sm-7' style='text-align:left;'>" + row.ZCRQ + "</label>" +
        "</div>" +
        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>注册结果：</label>" +
        "<label class='control-label col-sm-7' style='text-align:left;'>" + row.ZCJG + "</label>" +
        "</div>" +

        "<div class='col-sm-6'  style='padding-top:10px;'>" +
        "<label class='control-label col-sm-5' style='text-align:right;'>注册结果说明：</label>" +

        "</div>" +

        "<div class='col-sm-12'  style='padding-top:10px;'>" +
        "<textarea class='col-sm-12' rows='9'>" + row.ZCJGSM + "</textarea>" +
        "</div>" +

        "</div>" +
        "</div>";


    //弹出层-信息页面
    var index = parent.layer.open({
        type: 1,
        title: '医疗科室注册信息',
        area: ['850px', '400px'],
        shadeClose: false, //点击遮罩关闭
        scrollbar: false,//禁止浏览器滚动
        maxmin: false,
        content: contentStr

    });
}


/**
 * 消息提示框
 * @param content显示内容
 * @param type 提示框类型 1.普通提示框 2.警告框
 */
function alertWin(content, type) {
    parent.layer.alert(content, {icon: type});
}


/**
 * 获取当前页面的高度，让iframe通过内容来调整高度
 * @returns
 */
function getDocumentHeight() {
    return $('body').height();
}